/**
 * 
 */
package co.com.ebusiness.trader.services.impl;

import java.util.List;

import org.apache.tapestry5.ioc.annotations.Inject;

import co.com.ebusiness.trader.core.model.Empresa;
import co.com.ebusiness.trader.dao.ConsignacionDao;
import co.com.ebusiness.trader.dao.CuentaDao;
import co.com.ebusiness.trader.dao.InventarioDao;
import co.com.ebusiness.trader.dao.PrecioDao;
import co.com.ebusiness.trader.dao.ProveedorDao;
import co.com.ebusiness.trader.dao.VentaDao;
import co.com.ebusiness.trader.model.Consignacion;
import co.com.ebusiness.trader.model.Cuenta;
import co.com.ebusiness.trader.model.Inventario;
import co.com.ebusiness.trader.model.Precio;
import co.com.ebusiness.trader.model.Proveedor;
import co.com.ebusiness.trader.model.Venta;
import co.com.ebusiness.trader.services.TraderService;

/**
 * @author Luis Agudelo
 *
 */
public class TraderServiceImpl implements TraderService {
	
	@Inject
	private ProveedorDao proveedorDao;
	
	@Inject
	private PrecioDao precioDao;
	
	@Inject
	private ConsignacionDao consignacionDao;
	
	@Inject
	private VentaDao ventaDao;
	
	@Inject
	private CuentaDao cuentaDao;
	
	@Inject
	private InventarioDao inventarioDao;
	

	public List<Proveedor> getAllProveedores(Empresa empresa){
		return proveedorDao.getAllProveedores(empresa);
	}
	
	public void eliminarProveedor(Proveedor proveedor){
		proveedorDao.eliminarProveedor(proveedor);
	}
	
	public void guardarProveedor(Proveedor proveedor){
		proveedorDao.guardarProveedor(proveedor);
	}
	
	public Proveedor getProveedor(int idProv){
		return proveedorDao.getProveedor(idProv);
	}
	
	
	
	public List<Precio> getAllPrecios(Empresa empresa){
		return precioDao.getAllPrecios(empresa);
	}
	
	public void eliminarPrecio(Precio precio){
		precioDao.eliminarPrecio(precio);
	}
	
	public void guardarPrecio(Precio precio){
		precioDao.guardarPrecio(precio);
	}
	
	public Precio getPrecio(int idPrec){
		return precioDao.getPrecio(idPrec);
	}
	
	public List<Precio> getPrecios(Empresa empresa, String partialName){
		return precioDao.getPrecios(empresa, partialName);
	}
	
	
	public List<Consignacion> getAllConsignaciones(Empresa empresa){
		return consignacionDao.getAllConsignaciones(empresa);
	}
	
	public void eliminarConsignacion(Consignacion consignacion){
		consignacionDao.eliminarConsignacion(consignacion);
	}
	
	public void guardarConsignacion(Consignacion consignacion){
		consignacionDao.guardarConsignacion(consignacion);
	}
	
	public Consignacion getConsignacion(int idCons){
		return consignacionDao.getConsignacion(idCons);
	}
	
	
	
	public List<Venta> getAllVentas(Empresa empresa){
		return ventaDao.getAllVentas(empresa);
	}
	
	public void eliminarVenta(Venta venta){
		ventaDao.eliminarVenta(venta);
	}
	
	public void guardarVenta(Venta venta){
		ventaDao.guardarVenta(venta);
	}
	
	public Venta getVenta(int idVent){
		return ventaDao.getVenta(idVent);
	}
	
	
	public List<Cuenta> getAllCuentas(Empresa empresa){
		return cuentaDao.getAllCuentas(empresa);
	}
	
	public void eliminarCuenta(Cuenta cuenta){
		cuentaDao.eliminarCuenta(cuenta);
	}
	
	public void guardarCuenta(Cuenta cuenta){
		cuentaDao.guardarCuenta(cuenta);
	}
	
	public Cuenta getCuenta(int idCu){
		return cuentaDao.getCuenta(idCu);
	}
	
	
	public List<Inventario> getAllInventarios(Empresa empresa){
		return inventarioDao.getAllInventarios(empresa);
	}
	public void eliminarInventario(Inventario inventario){
		inventarioDao.eliminarInventario(inventario);
	}
	public void guardarInventario(Inventario inventario){
		inventarioDao.guardarInventario(inventario);
	}
	public Inventario getInventario(int idInv){
		return inventarioDao.getInventario(idInv);
	}

}
